//
//  BaseViewController.h
//  AAIM
//
//  Created by awh on 2019/11/24.
//  Copyright © 2019年 AAIM. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "GKCategory.h"
#import "GKNavigationBar.h"
#import "GKNavigationBarConfigure.h"
NS_ASSUME_NONNULL_BEGIN

@interface BaseViewController : UIViewController
//@property(nonatomic, assign) BOOL isCanSideBack;
//
///**
// * 禁用边缘返回
// */
//
//-(void)forbiddenSideBack;
//
///*
// 恢复边缘返回
// */
//
//- (void)resetSideBack;
/// 自定义导航条
@property (nonatomic, strong, readonly) GKNavigationBar     *gk_navigationBar;

/// 自定义导航条栏目
@property (nonatomic, strong, readonly) UINavigationItem    *gk_navigationItem;

#pragma mark - 额外的快速设置导航栏的属性
@property (nonatomic, strong) UIColor                       *gk_navBarTintColor;
@property (nonatomic, strong) UIColor                       *gk_navBackgroundColor;
@property (nonatomic, strong) UIImage                       *gk_navBackgroundImage;
/** 设置导航栏分割线颜色或图片 */
@property (nonatomic, strong) UIColor                       *gk_navShadowColor;
@property (nonatomic, strong) UIImage                       *gk_navShadowImage;

@property (nonatomic, strong) UIColor                       *gk_navTintColor;
@property (nonatomic, strong) UIView                        *gk_navTitleView;
@property (nonatomic, strong) UIColor                       *gk_navTitleColor;
@property (nonatomic, strong) UIFont                        *gk_navTitleFont;

@property (nonatomic, strong) UIBarButtonItem               *gk_navLeftBarButtonItem;
@property (nonatomic, strong) NSArray<UIBarButtonItem *>    *gk_navLeftBarButtonItems;

@property (nonatomic, strong) UIBarButtonItem               *gk_navRightBarButtonItem;
@property (nonatomic, strong) NSArray<UIBarButtonItem *>    *gk_navRightBarButtonItems;

/** 导航栏左右按钮距离屏幕边缘的距离，需在设置左右item之前设置此属性 */
@property (nonatomic, assign) CGFloat                       gk_navItemLeftSpace;
@property (nonatomic, assign) CGFloat                       gk_navItemRightSpace;

/** 页面标题-快速设置 */
@property (nonatomic, copy) NSString                        *gk_navTitle;

/// 是否隐藏导航栏分割线，默认为NO
@property (nonatomic, assign) BOOL                          gk_navLineHidden;



/// 显示导航栏分割线
- (void)showNavLine;

/// 隐藏导航栏分割线
- (void)hideNavLine;

/// 刷新导航栏frame
- (void)refreshNavBarFrame;
@end

NS_ASSUME_NONNULL_END
